The present invention relates to a sensorless motor driving apparatus for driving a sensorless motor such as a brushless DC motor or a stepper motor by switching an excited phase in accordance with the position of a rotor, and more particularly, to a sensorless motor driving apparatus which controls commutation of the sensorless motor using a position detector for detecting the position of an object driven by the sensorless motor.
In the prior art of motors using a permanent magnet on the rotor, such as brushless DC motors or HB-type stepper motors, it is known to detect the position of the rotor by detecting a counter electromotive voltage induced in a non-exciting phase (phase in which no current flows) of the stator coil. That is, the counter electromotive voltage induced in a non-exciting coil is monitored, and the position of the rotor is detected by detecting a zero-crossing point at which the counter electromotive voltage crosses a neutral voltage point. In this technique, commutation is performed, for example, at a point at which the phase is shifted by 30xc2x0 with respect to the zero-crossing point.
However, in this technique, when the rotor is at rest, no counter electromotive voltage is induced in the stator coil and thus sensorless driving is impossible. Therefore, when the motor whose rotor is at rest is started, the rotor is forcedly driven by performing forced commutation, and the operation is switched into a sensorless driving mode when the rotation speed has become high enough to induce a counter electromotive voltage greater than a predetermined value in the stator coil.
Besides, the above sensorless control method, it is also known to provide a Hall device on a motor whereby the position of the rotor is detected thereby controlling the motor.
However, in the sensorless control on the basis of the counter electromotive voltage, commutation cannot be controlled in a low-speed range as described above, and thus this technique is unsuitable when the motor is frequently started and stopped. On the other hand, when a Hall device is used to control commutation, although control is possible in a low-speed range, the control accuracy is limited by factors such as a limited accuracy in the width of magnetic poles of the rotor and an installation position error of the Hall device, and thus the accuracy of controlling commutation is poorer than that obtained by the sensorless control on the basis of the counter electromotive voltage in a high-speed range in which the counter electromotive voltage can be detected. Thus, there is a need for a sensorless control method which allows a motor to be controlled precisely even in a low-speed range.
In view of the above problems in the conventional techniques, it is an object of the present invention to provide an apparatus for driving a sensorless motor, capable of controlling commutation in a precise and highly reliable fashion even in a low-speed range.
To achieve the above object, there is provided an apparatus for driving a sensorless motor, comprising: a position detector for outputting a pulse signal in response to a movement of an object driven by a sensorless motor; commutation control means which counts a number of pulses of the pulse signal output from the position detector and controls the commutation of the sensorless motor depending upon the count value; commutation reference point setting means for setting a commutation reference point employed as a reference point in the counting of the pulses; wherein, each time the sensorless motor is started for the first time after the apparatus has been turned on, the commutation reference point setting means performs a first and a second phase excitation such that a first pulled-in position resulting from the first phase excitation and a second pulled-in position resulting from the secondphase excitation become different in electrical angle from each other by a magnitude not equal to either 180xc2x0 or an integral multiple of 180xc2x0, and the commutation reference point setting means further performs third-phase excitation such that a third pulled-in position resulting from the third-phase excitation becomes different in electrical angle from the second pulled-in position by a magnitude not equal to either 180xc2x0 or an integral multiple of 180xc2x0, and, thereafter, the commutation reference point setting means performs the setting of the commutation reference point when a rotor of the sensorless motor has stopped after the third-phase excitation.
When the object driven by the sensorless motor moves, a pulse signal is output from the position detector in response to the movement of the object, and the commutation is controlled on the basis of the counted number of pulses of the pulse signal. The commutation reference point, which is used as a reference point in counting the number of pulses of the pulse signal, is set by the commutation reference point setting means on the basis of a position (pulled-in position) at which the rotor stops when a stator coil of the sensorless motor is excited.
In the case where excitation is performed only once, there is a possibility that, depending upon the position at which the rotor is at rest just before the sensorless motor is started for the first time, the rotor does not move in response to the excitation. However, if excitation is performed twice such that the pulled-in positions become different in electrical angle from each other by a magnitude not equal to either 180xc2x0 or an integral multiple of 180xc2x0, the rotor surely rotates in the forward or reverse direction and is pulled into the second-pulled-in position. If further excitation is performed such that the pulled-in position resulting from the third phase excitation becomes different in electrical angle from that of the pulled-in position resulting from the second-phase excitation by a magnitude not equal to either 180xc2x0 or an integral multiple of 180xc2x0, the rotor rotates in a desired rotational direction and is pulled into the third-pulled-in position.
If the commutation reference point is set at the position at which the rotor is at rest after being pulled-in by the third excitation, then the resultant commutation reference point becomes coincident with the position at which commutation should be performed during rotation in the specified rotational direction.
Therefore, if this commutation reference point is employed as a counting reference point, and if the pulses are counted with respect to this reference point, and commutation is performed each time the count value becomes equal to an integral multiple of a predetermined number of pulses per commutation interval, commutation is correctly performed whenever the rotor comes to a position at which commutation should be performed.
In the case where an object is driven by the sensorless motor via a mechanism including, for example, a gear transmission mechanism, transmission belt, and pulley, there is a possibility that the object driven by the sensorless motor does not move and thus no pulse signal is output from the position detector, although the rotor actually rotates. This can occur if the gear transmission mechanism has backlash or if the driving force transmission belt expands. As a result, a shift occurs between the actual amount of rotation of the rotor from the rest position and the amount of rotation calculated from the number of pulses which are output from the position detector in response to the rotation.
In the present invention, the above problem is avoided by rotating the rotor in a desired rotational direction by performing excitation three times and then setting the commutation reference point at the pulled-in position where the rotor has stopped after the third excitation. Thus, if, thereafter, the sensorless motor is started in the same rotational direction as that in which the rotor was rotated to the position where the commutation reference point was set, the commutation reference point provides the correct counting reference point with no influence of the backlash. Therefore, it is able to control the commutation with correct timings.
The invention also provides a sensorless motor driving apparatus, wherein the commutation reference point setting means sets the commutation reference point for each rotational direction of the sensorless motor, and wherein the commutation control means controls the commutation depending upon the respective rotational direction in accordance with the number of pulses as counted starting from the commutation reference point set for that respective direction.
The invention also provides a sensorless motor driving apparatus, wherein the commutation reference point setting means detects an offset value indicating the number of pulses corresponding to the difference in position between the commutation reference points set for the respective rotational directions of the sensorless motor, and wherein the commutation control means counts the pulses with respect to one of the commutation reference points and corrects the count value of pulses on the basis of the offset value each time the rotational direction is switched.
Commutation reference points are set separately for the respective rotational directions of the sensorless motor. In the case where an object is driven by the sensorless motor via a mechanism including, for example, a gear transmission mechanism, a transmission belt, a pulley and/or a similar mechanical element, there is a possibility that, when the rotational direction is switched, the absolute position of the object to be driven is shifted with respect to the absolute position of the rotor, due to backlash of the gear transmission mechanism or expansion of the transmission belt. When there is such a shift, if commutation is controlled on the basis of the count value of pulses with respect to one commutation reference point set for one rotational direction, commutation timings generated on the basis of the count value of pulses in the opposite direction become different from correct timings.
To avoid the above problem, commutation reference points are set for the respective rotational directions of the sensorless motor, and commutation is controlled, depending upon the actual direction, in accordance with the number of pulses as counted starting from a commutation reference point set for that actual direction, thereby preventing the commutation timings from shifting from the correct timings depending upon switching the rotational direction.
Herein, an offset value, which indicates the number of pulses corresponding to the difference in position between the commutation reference points set for the respective rotational directions of the sensorless motor, is detected, and the number of pulses is counted with respect to one of the commutation reference points and the count value of pulses is corrected on the basis of the offset value each time the rotational direction is switched so that the resultant count value of pulses represents a correct value with respect to the commutation reference point for the actual rotational direction. This makes it unnecessary to prepare counting variables for storing the count value of pulses for the respective rotational directions and switch the counting variable to be referred to each time the rotational direction is switched.
The invention also provides a sensorless motor driving apparatus further comprising counter electromotive force detection means for detecting a counter electromotive force induced in a non-exciting phase of the sensorless motor; and commutation timing generating means for generating a commutation timing in accordance with the counter electromotive force detected by the counter electromotive force detection means, wherein commutation reference point setting means resets the commutation reference point at a point of time of the commutation timing generated by the commutation timing generating means.
The invention also provides a sensorless motor driving apparatus wherein the commutation timing generating means generates a commutation timing in accordance with the counter electromotive force of one of the phases of the sensorless motor.
The counter electromotive force induced in the non-exciting phase, in which no current flows, of the sensorless motor is detected by the counter electromotive force detection means. The position of the rotor is detected on the basis of the detected counter electromotive force, and a commutation timing is generated on the basis of the detected position of the rotor. At a point of time indicated by the generated commutation timing, resetting of the commutation reference point is performed.
The accuracy of the position of the rotor detected on the basis of the counter electromotive force is better than the accuracy of the position of the rotor detected on the basis of the pulled-in position to which the rotor is pulled in by pulling-in excitation. That is, in the case where the rotor is pulled into a rest position by excitation, the rotor stops at a position slightly shifted from an electrical stable rest position, depending upon an external force such as a frictional force which is balanced with a torque generated by the motor. In contrast, the position of the rotor detected by the counter electromotive force does not include an error caused by the frictional force or the like.
In view of the above, when it becomes possible to generate a commutation timing on the basis of the counter electromotive force, the position of the rotor is detected more precisely on the basis of the counter electromotive force, and a commutation timing is generated on the basis of the detected position of the rotor, and resetting of the commutation reference point is performed. After the resetting of the commutation reference point, the number of pulses is counted with respect to the (reset) commutation reference point, and commutation is performed on the basis of the count value of pulses, and thus it is ensured that commutation is controlled more precisely.
In the conventional sensorless control technique on the basis of the counter electromotive force, it is necessary to sequentially detect the counter electromotive forces of all phases of the sensorless motor and generate commutation timings on the basis of the detected counter electromotive forces for all phases. In contrast, the commutation timing generating means generates commutation timings on the basis of the counter electromotive force not of all phases of the sensorless motor but of one of the phases, and thus the counter electromotive force can be detected using a smaller number of circuits, and the commutation timing can be generated by simpler processing.
The invention also provides a sensorless motor driving apparatus, wherein the commutation timing generating means generates a commutation timing for each rotational direction of the sensorless motor, and wherein the commutation reference point setting means resets the commutation reference points for the respective rotational directions in accordance with the corresponding commutation timings generated for the respective rotational directions.
The invention also provides a sensorless motor driving apparatus, wherein the commutation reference point setting means detects an offset value indicating the number of pulses corresponding to the difference in position between the commutation reference points reset in accordance with the commutation timings generated for the respective rotational directions by the commutation timing generating means, and wherein the commutation control means counts the pulses with respect to one of the commutation reference points and corrects the count value of pulses on the basis of the offset value each time the rotational direction is switched.
The invention also provides a sensorless motor driving apparatus further comprising storage means for storing the offset value, wherein the commutation control means corrects the count value of pulses in accordance with the offset value stored in the storage means.
The commutation reference point setting means resets the commutation reference points for the respective rotational directions on the basis of the commutation timings generated for the respective rotational directions by the commutation timing generating means. In the case where an object is driven by the sensorless motor via a mechanism including, for example, a gear transmission mechanism, a transmission belt, a pulley and/or a similar mechanical element, there is a possibility that, when the rotational direction is switched, the absolute position of the object to be driven is shifted with respect to the absolute position of the rotor, due to backlash of the gear transmission mechanism or expansion of the transmission belt. When there is such a shift, if commutation is controlled on the basis of the count value of pulses with respect to one commutation reference point set for one rotational direction, commutation timings generated on the basis of the count value of pulses in the opposite direction become different from correct timings.
The above problem is avoided because commutation timings are generated on the basis of the counter electromotive forces in the respective rotational directions, and resetting of the commutation reference points is performed for the respective rotational directions on the basis of the commutation timings generated, thereby preventing the commutation timings from shifting from the correct timings.
Herein, an offset value is detected which indicates the number of pulses corresponding to the difference in position between the commutation reference points set for the respective rotational directions of the sensorless motor. After resetting the commutation reference points, the number of pulses is counted with respect to one of the commutation reference points, and the count value of pulses is corrected on the basis of the offset value each time the rotational direction is switched, so that the corrected count value represents a correct value with respect to the commutation reference point for the actual rotational direction. This makes it unnecessary to prepare counting variables for storing the count value of pulses for the respective rotational directions and switch the counting variable to be referred to each time the rotational direction is switched.
The offset value is detected and stored in advance. This makes it unnecessary to detect the offset value each time the commutation reference point is reset on the basis of the commutation timing generated in accordance with the counter electromotive force.
The invention also provides a sensorless motor driving apparatus, wherein when the control of the sensorless motor is started, the commutation control means performs the resetting of a commutation reference point in accordance with a commutation timing generated by the commutation timing generating means.
The invention also provides a sensorless motor driving apparatus, wherein when a predetermined period of time has elapsed since the control of the sensorless motor was started, the commutation control means performs the resetting of a commutation reference point in accordance with a commutation timing generated by the commutation timing generating means.
The invention also provides a sensorless motor driving apparatus, wherein each time a predetermined period of time elapses after the control of the sensorless motor was started, the commutation control means performs the resetting of a commutation reference point in accordance with a commutation timing generated by the commutation timing generating means.
The invention also provides a sensorless motor driving apparatus, wherein each time the sensorless motor is started, the commutation control means performs the resetting of a commutation reference point in accordance with a commutation timing generated by the commutation timing generating means.
The resetting of the commutation reference point on the basis of the commutation timing generated by the commutation timing generating means is performed when the control of the sensorless motor is started, the commutation reference point can be reset as soon as the rotational speed of the sensorless motor becomes high enough to generate a commutation timing on the basis of the counter electromotive force. Therefore, the commutation reference point can be set precisely at an early stage after starting the control of the sensorless motor. If the resetting of the commutation reference point is performed when a predetermined period of time has elapsed since the control was started, more specifically, for example, if the resetting is performed when a change in ambient temperature, which occurs after the sensorless motor is started, has reached an equilibrium state, the resetting of the commutation reference point is performed under a stable condition in terms of the ambient temperature. Furthermore, if the resetting of the commutation reference point is performed each time a predetermined period of time elapses after the control is started, the commutation reference point is properly set depending upon a change in ambient temperature. Still furthermore, if the resetting of the commutation reference point is performed each time the sensorless motor is started, that is, each time the sensorless motor starts to rotate, so that the commutation reference point is correctly set depending upon the conditions when the sensorless motor is started.